QuickSightの分析でパラメータに動的にデフォルト値を設定する方法
QuickSightの分析・ダッシュボードを複数の部門やエリアの人が使いたいとなったとき、自分が所属するなにかしらの属性でパラメータがデフォルト選択されていたら便利ですよね。QuickSightにはユーザやグループごとにパラメータのデフォルト値を設定する機能がありますので、ご紹介したいと思います。
サンプルデータ
前回の記事に引き続き、同じデータセット・分析を使っていきます。
準備
データセットから計算フィールドとして「都道府県コード」(substring({市区町村コード}, 1, 2)
)を追加します。(サンプルデータでは、市区町村コードの上2桁が都道府県コードに該当する。)
続いて都道府県コードごとにグループを作成し、ユーザをグループに追加します。今回は東京都のグループ 13
を作成し、自分のユーザをグループに追加します。
# グループを作成 $ aws quicksight create-group \ --group-name '13' \ --aws-account-id XXXXXXXXXXXX \ --namespace default \ --region us-east-1 { "Status": 201, "Group": { "Arn": "arn:aws:quicksight:us-east-1:XXXXXXXXXXXX:group/default/13", "GroupName": "13", "PrincipalId": "group/d-9067619a24/ebf8d6c0-d12f-4350-ae07-dfa9522b3ba8" }, "RequestId": "aa9a8646-ec76-4bc9-8a9e-d5264d3b31ea" } # グループにユーザを追加 $ aws quicksight create-group-membership \ --member-name cm-igarashi.ryosuke/cm-igarashi.ryosuke \ --group-name '13' \ --aws-account-id XXXXXXXXXXXX \ --namespace default \ --region us-east-1 { "Status": 200, "GroupMember": { "Arn": "arn:aws:quicksight:us-east-1:XXXXXXXXXXXX:user/default/cm-igarashi.ryosuke/cm-igarashi.ryosuke", "MemberName": "cm-igarashi.ryosuke/cm-igarashi.ryosuke" }, "RequestId": "51c93b5c-5cd2-4a15-89eb-8be30b48670d" } # グループのユーザ一覧を取得(追加されていることを確認) $ aws quicksight list-group-memberships \ --group-name '13' \ --aws-account-id XXXXXXXXXXXX \ --namespace default \ --region us-east-1 { "Status": 200, "GroupMemberList": [ { "Arn": "arn:aws:quicksight:us-east-1:XXXXXXXXXXXX:user/default/cm-igarashi.ryosuke/cm-igarashi.ryosuke", "MemberName": "cm-igarashi.ryosuke/cm-igarashi.ryosuke" } ], "RequestId": "4dcd164a-e42f-4700-a00c-b34420ea7944" }
パラメータに動的デフォルト値を設定する
分析にstateCodeというパラメータを追加し、都道府県コードフィルタと連動するように設定します。
パラメータの編集から「動的デフォルト値を設定」を選択して、グループ名列とデフォルト値の列のマッピングを行います。
今回はグループ名、デフォルト値ともに都道府県コードです。
そうしてダッシュボードを表示すると、「都道府県コード」パラメータがデフォルトで 13
が選択された状態で表示されます。
ご参考になれば幸いです。
以上です。